Cong's Blog.

质数的判断、五角星的输出

字数统计: 857阅读时长: 4 min
2019/08/08 Share

质数的判断

判断思路:在一般领域,对正整数n,如果用2到根号n
之间的所有整数去除,均无法整除,则n为质数。
质数大于等于2 不能被它本身和1以外的数整除

源码如下:

 <?php
function sushu($num) {
    for($i=2; $i < $num ; $i++) {//因为素数是要大于等于2的,不能小于。
        if($num % $i == 0) {//因为素数不能被其本身和1以为的数整除,可以用这个条件来判断是否能整除。
            echo $num. '不是素数';
            exit;//在知晓了其不是素数后跳出程序
        }
    }
    echo $num. '是素数';//若过输入的值不是大于等于2的值,直接输出结果
}
sushu(num:7);//引用函数

?>

输出五角星:

源码如下:

<?php
 for ($i1 = 1; $i1 < 6; $i1++)    //这是五角星的上面一个角 这里的变量$i1是用来控制输出的五角星的层数               
{
    for ( $j1 = 1; $j1 < 19 - $i1; $j1++ )
        printf( " " );                 //输出一个空格来换行
    for ( $k1 = 1; $k1 <= 2 * $i1 - 1; $k1++ )//上面的一个角的规律是2*n-1
        printf( "*" );
    printf( "\n" );
}

 for ( $i2 = 1; $i2 < 5; $i2++ )                    /*这是五角星的中间两个角*/
{
    for ( $j2 = 1; $j2 < 3 * $i2 - 3; $j2++ )
        printf( " " );
    for ( $k2 = 1; $k2 <= 42 - 6 * $i2; $k2++ )//中间的两个角输出规则是42-6*n
        printf( "*" );
    printf( "\n" );
}

for ( $i3 = 1; $i3 < 3; $i3++ ) /*这是中间与下部相接的部分*/
{
    for ( $j3 = 1; $j3 < 12 - $i3; $j3++ )
        printf( " " );
    for ( $k3 = 1; $k3 <= 12 + 2 * $i3; $k3++ )//规则是12+2*n
        printf( "*" );
    printf( "\n" );
}

for ( $i4 = 1; $i4 < 5; $i4++ ) /*这是五角星的下面两个角*/
{
    for ( $j4 = 1;$j4 < 10 - $i4; $j4++ )
        printf( " " );
    for ( $k4 = 1; $k4 <= 10 - 2 * $i4; $k4++ )//规则是10-2*n
        printf( "*" );
    for ( $m4 = 1; $m4 < 6 * $i4 - 3; $m4++ )
        printf( " " );
    for ( $n4 = 1; $n4 <= 10 - 2 * $i4; $n4++ )
        printf( "*" );
    printf( "\n" );
}
printf("\n\n" );
?>

新闻界面:

源码如下

 <!DOCTYPE html>
<html>
<head>
<title>震惊部新闻合集</title>
<meta charset="UTF-8">
</head>
<body>
<table>
<tr>
    <th>热度</th>
    <th>标题</th>
    <th>时间</th>
    <th>作者</th>
    <th>操作</th>
</tr>
<?php
$f=fopen('data_db','r');//以只读模式打开data_db.txt文件
$i=1;
while (!feof($f)){ //通过判断光标是否到末尾,是的话就已经输出完了,跳出循环
    $input=fgets($f);//获取文件内容,一次只有一行
    $data=explode('||',$input);//将获取到的内容分隔开,组成一个数组。
    echo_table($data);//这个while循环就是将dbta_db的文件内容完全输出,
}
?>
</table>
</body>
</html>
<?php
function echo_info($data){
   $content=substr(base64_decode($data[2]),0,200);//将data[2]里的内容解密,取出200长度的内容
   echo <<<EOF
<tr>
<td><img src="*"></td>//连接图片
<td> colspan="4">{$content} </td>//固定大小
</tr>
EOF;
}
function echo_table($data){
   $hot=$data[5];
   $author=$data[3];
   $add_date=$data[4];//将数组的元素赋值到变量中
   $title=base64_decode($data[1]);
   $content=base64_decode($data[3]);//解密数组中的元素
   echo <<<EOF
   <tr>
   <td> {$hot} </td>
   <td> {$title} </td>
   <td> {$author} </td>
   <td> {$add_date} </td>
   <td>  赞/踩 </td>
   </tr>
EOF;
}
?>
CATALOG
  1. 1. 质数的判断
    1. 1.1. 源码如下:
  2. 2. 输出五角星:
    1. 2.1. 源码如下:
  3. 3. 新闻界面:
    1. 3.1. 源码如下